home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
BARNET
/
FREENET
/
HUGHES
/
SLIPDRIV
/
!ReadMe
next >
Wrap
Text File
|
1996-10-29
|
6KB
|
131 lines
SLIPdriver
(C) Tom Hughes 1995
0. Copyright
The SLIPdriver module described by this document and this document
itself are copyright (C) Tom Hughes 1995. They are however released as
freeware subject to certain terms and conditions. These are described
in the file named 'Licence' which should have accompanied this
document.
Portions of the SLIPdriver module are taken from BSD source code, and
are subject to the BSD licence conditions given in the file named 'BSD'
which accompanies this document.
1. Introduction
This file describes the SLIPdriver module supplied with the FreeNet
TCP/IP stack. This module implements a hardware driver conforming to
version four of the Acorn DCI specification for hardware drivers and
provides hardware interfaces which talk the SLIP protocol over serial
lines.
The driver supports an unlimited number of interfaces, each of which
is attached to a specified serial line. The serial lines are driven
using the blockdrivers, thus providing support for various dual serial
cards as well as the internal serial port.
The module provides three commands, plus a number of SWIs and service
calls for implementing the DCI protocol. It can be loaded before or
after loading the TCP/IP stack it is going to work with, but the
interfaces you intend to use must be configured using the slattach
command before you can configure them into the TCP/IP stack using
ifconfig.
2. The Serial Blockdrivers
The SLIPdriver module uses the serial blockdrivers written by Hugo
Fiennes to talk to whatever serial interfaces you may have. These
reside in an application named !SerialDev which will need to have been
seen by the filer before attempting to use the SLIPdriver module.
These blockdrivers should be available from ftp.demon.co.uk in the
directory /pub/archimedes. They are also available from most major
Acorn bulletin boards and FTP sites.
If you intend to use the 'Internal' or 'InternalPC' drivers (used to
drive the built in serial port), you will need to be using at least
revision 11 of the blockdrivers, as there is a bug in earlier releases
that prevents these drivers working correctly with SLIPdriver.
3. Configuring SLIP interfaces
In order to use SLIP interfaces, you will need to load the SLIPdriver
module using RMRun, and this is usually done in the FreeNet startup
script.
Once the module has been loaded, the SLIP interfaces you wish to use
will need to be configured using the slattach command, the syntax of
which is as follows:
slattach [{+|-}{c|e|f|m mtu}] <driver> <port> <speed>
Where <driver> is the name of a blockdriver, <port> is the port number
for that driver, and <speed> is the speed at which you wish to run the
connection. Obviously, because this command needs to be able to load a
blockdriver, the !SerialDev application will need to have been seen by
the filer beforehand.
If the serial port has already been set to the correct speed (perhaps
by a dialer application), the SLIPdriver can be told not to try and
set the speed by specifiying a speed of zero to the slattach command.
As an example, the following line configures the internal serial port
for use with the SLIP driver, running at 19200 baud:
slattach internal 0 19200
Equally, the following configures two interfaces using the two ports
on a Serial Port dual serial card, each running at 38400 baud, with
one using a PC cable and one an Acorn cable:
slattach sp_dual 0 38400
slattach sp_dualpc 1 38400
Each configured port number, starting with zero, and the resulting
interfaces are named sl<n>. The numbers are assigned in order, starting
from zero, so the first interface to be configured will be sl0, the next
sl1 and so on.
The MTU for an interface can be set using the -m switch. This takes
a numeric argument, which specifies the MTU for the interface. This
is the maximum size of packet which the interface can handle. If not
specified, it defaults to 576 bytes.
There are also three switches, each of which can be used as a positive
switch (to turn something on) or a negative switch (to turn something
off). The first of these, the 'c' switch controls header compression,
so use +c to use CSLIP on that port.
The second switch, 'e' controls auto-detection of header compression
when used by the remote host, and will cause CSLIP to be used if the
other host uses it. Note that only one host of the two connected hosts
can use this, so the server normally uses this, and the client uses
either +c or -c to control whether SLIP or CSLIP is used.
Finally, the 'f' switch controls whether hardware flow control is used
or not. This, like the two previous switches, defaults to off.
4. Removing SLIP interfaces
A SLIP interface can be removed using the sldetach command. This
takes a single argument, which is the number of the interface you
wish to remove. Once an interface is removed, that number becomes
free, and slattach will reuse it when it is next used.
5. Checking the modules status
A third command is provided to check on the current status of the
SLIP driver, including what interfaces are configured, whether they
are currently active, and how much data has flowed through them. This
command is slstat, and takes no parameters.
6. Closing the SLIP connections
Killing the module will cause the TCP/IP stack to be informed that the
configured interfaces are no longer available, after which each of the
serial lines will be dropped, hence informing the remote system that
the link is being dropped.